package com.carleasoft.mps.adu.business.user.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.carleasoft.mps.adu.business.user.bean.entity.AuthorityUserEntity;
import com.carleasoft.mps.adu.business.user.bean.po.AuthorityUserPo;
import com.carleasoft.mps.adu.business.user.bean.vo.AuthorityUserDetailVo;

/**
 * <p>Description: user service</p>
 *
 * @author ztm
 * @since 2020-04-29
 */
public interface AuthorityUserService extends IService<AuthorityUserEntity> {
    /**
     * 添加用户
     *
     * @param authorityUserPo
     * @return void
     */
    AuthorityUserEntity addUser(AuthorityUserPo authorityUserPo);

    /**
     * 修改用户
     *
     * @param authorityUserPo
     * @return void
     */
    AuthorityUserEntity updateUser(AuthorityUserPo authorityUserPo);

    /**
     * 删除用户
     *
     * @param authorityUserPo
     * @return void
     */
    Boolean deleteUser(AuthorityUserPo authorityUserPo);


    /**
     * 用户详情查询
     *
     * @param authorityUserPo
     * @return userCode
     */
    AuthorityUserDetailVo getUserByCode(AuthorityUserPo authorityUserPo);

    /**
     * 密码修改
     *
     * @param authorityUserPo
     * @return void
     */
    Boolean changePassword(AuthorityUserPo authorityUserPo);



    /**
     * 根据账号查看用户
      * @param authorityUserPo
     * @return
     */
    AuthorityUserDetailVo getByUserAccount(AuthorityUserPo authorityUserPo);



    /**
     * 校验账号是否重复
     * @param userAccount
     * @param userCode
     */
    void existUser(String userAccount,String userCode);



}
